package com.neuedu.system.mapper;

import java.util.List;
import com.neuedu.system.domain.AgriculturalReports;
import com.neuedu.system.domain.CropPlantingAreas;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
 * 农业报告基本信息Mapper接口
 *
 * @author ruoyi
 * @date 2024-12-17
 */
@Mapper
public interface AgriculturalReportsMapper extends BaseMapper<AgriculturalReports>
{
    /**
     * 查询农业报告基本信息
     *
     * @param id 农业报告基本信息主键
     * @return 农业报告基本信息
     */
    public AgriculturalReports selectAgriculturalReportsById(Long id);

    /**
     * 查询农业报告基本信息列表
     *
     * @param agriculturalReports 农业报告基本信息
     * @return 农业报告基本信息集合
     */
    public List<AgriculturalReports> selectAgriculturalReportsList(AgriculturalReports agriculturalReports);

    /**
     * 新增农业报告基本信息
     *
     * @param agriculturalReports 农业报告基本信息
     * @return 结果
     */
    public int insertAgriculturalReports(AgriculturalReports agriculturalReports);

    /**
     * 修改农业报告基本信息
     *
     * @param agriculturalReports 农业报告基本信息
     * @return 结果
     */
    public int updateAgriculturalReports(AgriculturalReports agriculturalReports);

    /**
     * 删除农业报告基本信息
     *
     * @param id 农业报告基本信息主键
     * @return 结果
     */
    public int deleteAgriculturalReportsById(Long id);

    /**
     * 批量删除农业报告基本信息
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAgriculturalReportsByIds(Long[] ids);

    /**
     * 批量删除农作物种植面积
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCropPlantingAreasByReportIds(Long[] ids);

    /**
     * 批量新增农作物种植面积
     *
     * @param cropPlantingAreasList 农作物种植面积列表
     * @return 结果
     */
    public int batchCropPlantingAreas(List<CropPlantingAreas> cropPlantingAreasList);


    /**
     * 通过农业报告基本信息主键删除农作物种植面积信息
     *
     * @param id 农业报告基本信息ID
     * @return 结果
     */
    public int deleteCropPlantingAreasByReportId(Long id);
    public int deleteLandResourcesByReportId(Long id);
    public int deleteLivestockNumbersByReportId(Long id);

}
